Part Number Hot Search : 
QZX56 CJ7806 ZMM525 471KD25 PS5002HC LV320AI 101M35V8 SDR938
Product Description
Full Text Search
 

To Download AN1423 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  1/3 january 2002 AN1423 application note introducing the flash+psd psd9xx family contents  (see next page)
page 2 the new flash psd3xx introducing the flash psd9xx family by dan harris contents 1 introduction.................................................................................................................. ............ 3 2 why switch to a psd9xx?..................................................................................................... 4 3 benefits of a flash-based product............................................................................................ 5 3.1 what is flash? ................................................................................................................ .5 3.2 why flash is better than eprom or otp-rom ........................................................... 5 4 flash brings in-system programmability (isp)....................................................................... 5 4.1 what is in system programming (isp)? ......................................................................... 5 4.2 features and benefits of isp ........................................................................................... 6 5 other features and benefits of the psd9xx .......................................................................... 6 5.1 optional secondary flash or eeprom.......................................................................... 6 5.2 more i/o..................................................................................................................... ..... 7 5.3 larger, more capable pld............................................................................................. 7 5.4 optional sram with battery-backup capability .......................................................... 7 5.5 automatic c code generation ........................................................................................ 7 6 steps required to upgrade ..................................................................................................... 8 6.1 steps required for all upgrades...................................................................................... 8 6.1.1 hardware changes .................................................................................................. 9 6.1.2 software changes.................................................................................................... 9 7 example conversion: psd313 to psd913f2........................................................................ 11 8 adding functionality to the psd913f2 ................................................................................ 15 8.1 additional psd configuration ...................................................................................... 17 9 generating c code ............................................................................................................... .18 10 conclusionwhere to go from here.................................................................................... 19 a flash memory explained...20
page 3 1 introduction does a flash psd3xx with the following features sound appealing?  fully in-system programmable (isp) and in-application programmable(iap)allows faster time-to-market by reducing design cycle times. with an isp/iap part, a socket is no longer required.  flash-based, eliminating the need for romed mcu or a programmer for boot code.  no need to throw away anymore otp devices a few years back, waferscale recognized the move to flash in the embedded control marketplace. waferscale surveyed the customer base and saw a great need for a flash psd3xx type device. as various users were interviewed, knowledge was gained about the mistakes made by other flash vendors, and the final definition of the flash psd became a superset of the current psd3xx family. many expressed interest in being able to program an entire blank device, including the memory, right on the board, without mcu intervention. this feature eliminates the need for a socket and prevents otp part waste during the development and upgrade phases. also, users expressed the need to be able to program one area of a device while executing code out of another area with low mcu overhead. the flash psds address both these needs by providing a jtag port for isp and dual non-volatile memories (nvms) for iap. jtag-isp was the evolving standard and waferscale decided to add this feature to make flash psds the world's first jtag programmable pld+memory device. the extra pins required to address this need plus the numerous requests for a few more i/o resulted in a higher pin count package. taking advantage of our .35 micron technology, it was decided to also add a few other features normally reserved for higher priced devices, including increased pld capability. the resulting product, which is exceeding the activity of all previous otp products combined, (including the psd3xx family) is called the flash psd9xx family. after you read this document, review the datasheet, and take a look at the development environment, you will understand why we added these enhancements and why we place the word easy in the product's name. additional features include:  increased memory capacities.  optional secondary flash or eeprom memory array, allowing concurrent memory operations, such as executing from one memory while updating the other.  enhanced pld with more product terms and capabilities.  battery backup capability for the sram.  more i/o  automatic c code generation for the nvms within the psd  support of additional microcontrollers (philips 80c51xa, intel 80c251, plus others).
page 4 the following table compares the major features and functions of the psd3xx family and the psd9xx family: function/feature psd3xx psd9xx mainmemory 256kbitsto1mbiteprom 1C4mbitflash optional secondary memory none 256 kbits eeprom or 256 kbits flash sram none or 16 kbits 16 or 64 kbits # product terms 40 up to 182 # pld inputs 14 or 18 up to 73 #pins 44 52to80 page register size 0 or 4 bits 8 bits # i/o pins 19 27 to 52 in-system programmable? no yes in-application programmable? not directly yes battery backup capability for sram? no yes programmable polarity for reset input? yes on 5 volt psd no write protection for memory sectors not applicable yes this document fully explains all the features and benefits of upgrading from a psd3xx to a psd9xx. appendix a provides a brief functional explanation of flash memory. 2 why switch to a psd9xx? you may be asking yourself why should i switch from my psd3xx to the psd9xx family? there are many possible answers, including: you want concurrent non-volatile memories to gain the benefit of iap you want a flash-based product that is in-system programmable (isp) via an ieee 1149.1 compatible jtag port you want the ability to perform field updates you dont want to throw away any more otp parts you need a more capable pld you need more i/o you want battery-backup capability for your sram.
page 5 3 benefits of a flash-based product the following sections explain what flash is and why a flash-based product is better than an eprom-based or an otp-rom-based product. 3.1 what is flash? flash is an electronically erasable and electronically programmable nonvolatile memory. you can program and re-program flash memory without ever removing it from the circuit board. flash memory can be programmed via any communication channel supported by your microcontroller (mcu). (examples include uart, can, spi, and i 2 c.) note: the flash psd can also be programmed via the jtag port with no mcu assistance. 3.2 why flash is better than eprom or otp-rom flash memory brings you the following advantages over eprom and otp-rom: flash is electronically erasable and programmable. flash brings in-system programmability (isp). see the next section. flash provides rugged data recording. flash erases much quicker than eprom. otp-rom cannot be erased. these benefits translate into a product that will give you more features-per-dollar and reduce your time-to-market. since flash contents are changed electronically, you can program the psd9xx while in-system. 4 flash brings in-system programmability (isp) the flash psd9xx family gives you the advantage of in-system programmability (isp). having isp capability means that you can solder a blank psd9xx part directly to the circuit board and never touch it again. the following sections explain isp and discuss the features and benefits that isp delivers. 4.1 what is in system programming (isp)? if you are not familiar with isp, you are missing a whole new world. using a psd9xx, you have the ability to erase and program the entire chip while it is on the circuit board! with isp, you have the ability to perform rapid field updates, product customization, and quick prototyping. all that you need is a st flashlink? cable attached to your pc on one end and a header on your circuit board on the other. for example, you can take a laptop computer loaded with your most recent design to a customer site, hook up the flashlink to your product, and update
page 6 anything and everything, all in a matter of seconds. its just that easy ! no mcu firmware needs to be written and debugged for isp. the flashlink does its job with no mcu assistance. 4.2 features and benefits of isp with isp, you can program and reprogram a chip as many times as you want 1 . isp also brings the advantage of being able to perform field updates. for example, imagine the following situation: your company, simpson power and light, makes products that control nuclear reactors. due to changing government regulations, the control algorithm needs to be updated frequently. with a flash psd9xx product in the design, you no longer need to retrieve the product, decontaminate it, open it, pull the chip off the board (or de-solder it), reprogram the product (assuming non-otp product), and reverse the process to put the product back in place. instead, simply connect a flashlink cable to a panel in the control room and update the psd9xx using psdsoft express on your laptop computer. 5 other features and benefits of the psd9xx the flash psd9xx brings you other features and benefits, including: optional secondary flash or eeprom (concurrent memory/boot code/iap) more i/o larger, more capable pld optional sram with battery backup capability automatic c code generation using psdsoft express software. 5.1 optional secondary flash or eeprom the main flash memory is available in one-, two-, or four-megabit capacities. the psd9xx1 provides a secondary eeprom, while all other versions provide a secondary flash. the size of the secondary eeprom or flash is 256 kilobits. concurrent memory and iap when the mcu participates in isp (no jtag), the optional secondary memory brings a unique advantage. that advantage is the ability to execute from one of the memories while simultaneously updating the other. this process is now commonly called in-application programming (iap). a solution without iap requires tremendous overhead by the mcu. the psd9xx silicon architecture implements dynamic memory swapping and the ability to move memory between program space and data space on-the-fly . 1 the flash portion of the psd9xx can be programmed up to 100,000 times.
page 7 5.2 more i/o with the psd9xx device have up to 52 individually configurable i/o pins versus the 19 available in the psd3xx parts. these pins can be used for the following: mcu i/os extra address inputs pld i/os latched mcu address outputs special function i/os. note: sixteen of the i/o ports can be configured as open-drain outputs. 5.3 larger, more capable pld the psd9xx provides two pld sections, the decode pld (dpld) and general-purpose pld (gpld). both plds decode addresses and other signals. the dpld can be used to generate internal chip-select signals and the gpld can be used to generate external chip-select signals and other pld outputs. 5.4 optional sram with battery-backup capability the psd9xx offers, as an option, 16 or 64 kbits of sram. this sram will be automatically backed up while a battery is connected, protecting the sram contents in the event of a power failure. you can also configure one of the port pins to indicate when power has switched over to the battery. 5.5 automatic c code generation psdsoft makes available low-level drivers for memory programming algorithms, and automatically generates the c code for you. simply copy the c functions into your source code, edit the parameters to fit your design, and compile.
page 8 6 steps required to upgrade upgrading to the flash psd9xx is relatively simple. the number of steps required will depend on how much of the psd9xx you plan on utilizing. the following sections will guide you step-by-step through the process required to upgrade to the psd9xx. the first section covers the steps required for every upgrade. the sections that follow that cover other steps that may be required, depending on what parts of the psd9xx you plan on using. 6.1 steps required for all upgrades for this discussion, pick one of the following two block diagrams that best matches your setup. note: if you are using a 16-bit mcu, you should consider looking at the psd4000 family instead. see st s website for more information. the same basic principles apply to upgrade to the psd4000 family. your mcu psd3xx or psd9xx address/data address control i/o address data control 8 8+ 16+ 8 muxed bus setup non-muxed bus setup psd3xx or psd9xx i/o your mcu
page 9 6.1.1 hardware changes note that in either case (muxed/non-muxed bus), you can still use the same psd ports when upgrading. however, the pin numbers where the signals are routed will change. consult the psd9xx family data sheets for the new pin numbers. note: no additional changes are required to support the jtag port if it is not used. 6.1.2 software changes please make sure you are using the latest version of psdsoft express. it can be downloaded for free from st s web site at www. st. com /com . psdsoft express greatly simplifies the process of designing and implementing a psd in your design. for more details, you will want to refer to the psdsoft express user manual , available on st s website. there are some changes within psdsoft express that you need to be aware of. if you had been using psdsoft previously, some screens and places where information is entered is now different. also, you no longer need to use or have knowledge of the abel-hdl language at all. if you were using psdsoft express previously, the changes will be minor. note the following differences between the psd9xx and the psd3xx: the psd9xxs pld has greater address decode resolution. therefore, you now connect [a0:a10] without sacrificing any inputs. with the psd3xx, you could only connect up to 3 lower-order address bits to port c. port a of the psd9xx can be used for pld i/o. port b of the psd9xx is not limited to output only from the pld. it can also be used for pld input. depending on your psd9xx, port c or port e now has the jtag-isp capability. the page register in the psd9xx is twice as large as the optional one within the psd3xx. any internal eprom segment select signal (esx) for the psd3xx must be changed to a flash segment select signal (fsx or csbootx) for the psd9xx. note that there is only one product term available in the psd3xx for the eprom segment select signals. the psd9xx provides up to 3 product terms per internal memory select signal. some pin assignments are different. see the next section for a detailed example of a psd3xx to psd9xx conversion.
page 10 the following example shows sample internal chip select signals for the psd3xx, and how they are implemented for the psd9xx using psdsoft express: example lines from a psd3xx abel file es0 = (address >= ^h0000) & (address <= ^h3fff); es1 = (address >= ^h4000) & (address <= ^h7fff); csiop = (address >= ^ha000) & (address <= ^ha7ff); psdsoft express implementation here is a screen capture from psdsoft express showing how fs0 is defined: next, fs1 gets defined in a similar manner:
page 11 lastly, we define csiop. note the reduced address range due to the fact that a0 through a15 are all connected to the pld now. the next section shows a detailed conversion example. 7 example conversion: psd313 to psd913f2 this section contains a specific example of the steps required to upgrade from a psd313 to a psd913f2. this section only shows the required steps to upgrade, and does not cover any of the additional functionality of the psd9xx. however, the next section does build on this section. this section assumes you have been using psdsoft and not psdsoft express for your original implementation. had you used psdsoft 2000 or psdsoft express to implement your psd3xx design previously, the screens will be mostly the same with only minor changes to implement. the following table shows the major differences between the psd313 and the psd913f2: function/feature psd313 psd913f2 main memory 1 mbit eprom 1 mbit flash # product terms 40 182 # pld inputs 18 73 # pins (plcc package) 44 52 page register size 4 bits 8 bits # i/o pins 19 27 in-system programmable? no yes in-application programmable? not directly yes battery backup capability for sram? no yes programmable polarity for reset input? yes no memory write protection at the sector level no yes
page 12 lets compare two block diagrams: one shows a psd313 connected to an 80c31 and the other shows an flash psd913f2 connected to an 80c31. for the example, the exact same i/o is assumed. 80c31 pa pb pc a8-a15 ad0-ad7 ale psen wr rd latched address output (la0-la7) 3 chip-select outputs 8 mcu i/o outputs csi psd313 80c31 pa pb pc a8-a15 ad0-ad7 ale psen wr rd latched address output (la0-la7) 3 chip-select outputs 8 mcu i/o outputs csi psd913f2 pd you can see that the block diagrams are virtually identical except the psd913f2 has 8 more i/o than the psd313. check the next section to see what can be done with port c. next we show the differences in the design environment for the programmable logic portion of the psds. as such, the following discussion only applies to the programmable logic within the psds. lets look at the changes and additions that need to be made to the psdsoft design file (.abl) when implementing the same functions using psdsoft express: 1) before, the address pins were declared in the psdsoft design file address inputs: a15..a11 pin; now, simply select your mcu and psd and the required address lines are automatically included in the design. see the screen captures below:
page 13 if you had made the above selections in the mcu and psd selection screen, you would see the following when you clicked on the define psd pin/node functions button: note how the addresses a0 to a15 and some control signals are pre-defined for you.
page 14 2) we want port a to output latched addresses. you now use the pin definitions screen to accomplish this: 3) for the psd3xx using psdsoft, the eprom segments (es0..es7) were declared and defined in the abel design file. with psdsoft express, the memory select signals are defined using the design assistant. for the psd9xx, the flash select signals are denoted fs0 to fs7. see the screen captures in section 6.1.2. 4) if you wish, you may reduce the resolution of the csiop space to 256 bytes (from 2 kbytes). again, see the example in the previous section. the next section builds on this example by successively adding functions to the psd913f2 and explains the procedures.
page 15 8 adding functionality to the psd913f2 this section builds on the last section and covers what must be done in psdsoft express to handle additional functionality for the psd913f2. with this in mind, lets see what can be done with port c first by adding the jtag interface. for information regarding the jtag interface and how to use it, see application note 54jtag information . 80c31 pa pb pc a8-a15 ad0-ad7 ale psen wr rd latched address output (la0-la7) 3 chip-select outputs 8mcui/ooutputs csi psd913f2 pd jtag port to ensure that port c is setup for jtag, lets take another look at the pin definitions screen: notice how the port pins pc0, pc1, pc5, and pc6 are already setup for the main four jtag signals: tms, tck, tdi, and tdo. note: pins pc3 and pc4 can be used for optional (and non- standard) jtag signals to help speed up programming.
page 16 now, lets say that we wanted to add the following additional functions on port c: connect a battery-backup for the sram have an output that indicated when the battery was being used output a programming status signal (ready/busysee appendix a). these functions are also set in the pin definitions screen:
page 17 8.1 additional psd configuration if you had a psd3xx part, this screen would only have the additional psd configuration tab and there would be an option to set the cmiser bit, which is no longer needed in the psd9xx family because the devices automatically incorporate the equivalent power saving functionality. thus, by clicking on additional psd settings in the psdsoft express design flow, you are presented with this screen: the jtag/isp tab is used to specify the jtag user code. see the description box for more details. lastly, the sector protection tab allows you to set the sector protection bits for individual memory sectors within the psd9xx. sector protection write protects the individual sectors and is not applicable to the psd3xx family.
page 18 9 generating c code psdsoft express offers c code generation for all flash-based parts, including the psd9xx. this c code generated conforms to the ansi-c standard and can be combined with the rest of your code to ease the transition of reading and writing the flash within the psd, which requires special unlock codes for such purposes. see the appendix for more details on flash memory. the coded examples brings up a screen that allows you to select from different complete design examples that were written for our development boards. see the psdsoft express user manual for more information on the c code generation.
page 19 10 conclusionwhere to go from here if you are interested in upgrading to the flash psd9xx family, it is highly recommended that you visit our website and check out the available resources. the home page has several links that have descriptions of the flash-based psd products. other resources available on the website include: the psd9xx family data sheets application note 54jtag information application note 62in system programmabilityhow much money can it save? application note 67psd913f2/80c32 design guide application note 68psd913f2/68hc11 design guide psdsoft express user manual you will also want to download psdsoft express and check it out if you have not already done so. it is available for free on our website.
page 20 a flash memory explained this section explains how flash memory works from a functional standpoint. more in- depth explanations can be found elsewhere, and are beyond the scope of this document. we start with a comparison of how flash and eprom are programmed and erased. then, the specifics of how our psd9xx flash is read and written are provided. paragraphs highlighted in gray contain information specific to the psd9xx and may not be true for all flash-based products. a.1 flash versus epromprogramming and erasing flash is programmed and erased using embedded algorithms. with embedded algorithms, a series of commands are written to the flash. these commands unlock the flash so it can accept data, erase sectors, or perform other programming tasks. eproms cannot be programmed while in-system, so they have no internal state machines to control erase and program algorithms. instead, they must be programmed and verified (at higher voltage levels than vcc) using an external programmer. erasing an eprom requires the eproms cells be exposed to ultraviolet light for an extended period of time. a.2 flash p sd9xx operations flash read the read interface of flash is identical to eprom. a valid address selects the flash, and the read strobe tells it to output data at the given address. valid data would then be presented by the flash on the data bus after an access time. valid data is usually the contents of the given address, but it can also be status information about a program or erase in-progress. flash identifier the flash identifier provides specific information about the type of flash on the chip. reading the flash identifier requires a specific embedded algorithmthree specific writes, followed by a read. for more information on the flash identifier, refer to section 9.1 of the psd9xx family data sheet . flash sector protection the flash sector can be individually protected, which disables programming and erasing of the sector being protected. the psd9xx devices can be programmed and erased while in-system (see section 4), and do not require a special programmer, an ultraviolet light source, or a voltage higher than vcc.
page 21 with the psd9xx family, the sector protection is set using the psdsoft configuration utility. the sector protection status can be read using a series of three specific writes, followed by a read. flash program and erase programming and erasing the flash memory requires special instructions. the special instructions are required in order to protect the contents of the flash from inadvertent writes and erasure. flash sectors must be erased before they can be programmed. data polling data polling provides a method of determining when a program or erase operation is in progress (or has finished). data polling is provided because of the large variances in the time it takes to program or erase. basically, polling the status of a data bit (d6 or d7) determines weather an embedded programming algorithm is still in progress or has completed. the ready/busy pin the ready/busy pin provides a low overhead method of determining if an embedded programming algorithm is in progress or has completed. the pin is low (busy) during a program or erase operation, and high (ready) otherwise. refer to the psd9xx family data sheet for detailed instructions on how the psd9xx flash memory operates, including: flash sector selects the ready/busy pin flash operations flash embedded programming algorithms data polling. the psd9xx flash memory is programmed byte-by-byte. the programming instruction is a sequence of three specific write operations to predefined address locations (which unlock the flash), followed by writing the address and data byte to be programmed. during programming, the memory status may be checked by reading status bits (dat a polling). there are two ways to erase the psd9xx: all at once (bulk erase) or by sector (secto r erase). the bulk erase instruction requires six write operations, followed by a read operation of the status register bits. the sector erase instruction requires six write operations. after the operations, additional addresses can be written to erase other flash sectors in parallel. during either erase operation, the memory status may be checked b y reading the status bits.
AN1423 - application note 2/3 table 1. document revision history date rev. description of revision aug-2000 3.0 document written (an059) in the wsi format 03-jan-2002 3.1 front page, and back two pages, in st format, added to the pdf file references to waferscale, wsi, easyflash and psdsoft 2000 updated to st, st, flash+psd and psdsoft express
3/3 AN1423 - application note for current information on psd products, please consult our pages on the world wide web: www.st.com/psm if you have any questions or suggestions concerning the matters raised in this document, please send them to the following electronic mail addresses: apps.psd@st.com (for application support) ask.memory@st.com (for general enquiries) please remember to include your name, company, location, telephone number and fax number. information furnished is believed to be accurate and reliable. however, stmicroelectronics assumes no responsibility for the co nsequences of use of such information nor for any infringement of patents or other rights of third parties which may result from its use. no license is granted by implication or otherwise under any patent or patent rights of stmicroelectronics. specifications mentioned in this publicati on are subject to change without notice. this publication supersedes and replaces all information previously supplied. stmicroelectronics prod ucts are not authorized for use as critical components in life support devices or systems without express written approval of stmicroelectro nics. the st logo is registered trademark of stmicroelectronics all other names are the property of their respective owners ? 2002 stmicroelectronics - all rights reserved stmicroelectronics group of companies australia - brazil - canada - china - finland - france - germany - hong kong - india - israel - italy - japan - malaysia - malta - morocco - singapore - spain - sweden - switzerland - united kingdom - unit ed states. www.st.com


▲Up To Search▲   

 
Price & Availability of AN1423

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X